Alignement automatique

Le script

Ecriture d'un programme perl pour alignement du corpus au niveau des titres et des articles.
Mise au format UNIX des six pages html + utilisations de CHOMP -> un titre/article par ligne.
Différents traitements ont été effectués en fonction des langues car les fichiers en html des articles n'étaient pas structurés de la même manière
Il fallait donc, en fonction de chaque structure, extraire les articles à l'aide de tableau de hachage puis réaligner les articles dans l'ordre pour n'obtenir qu'un seul tableau HTML.
Le code est long et pas très beau, mais il était nécessaire de traiter différement chacune des langues.

>> résultat : alignement.html
>> programme en perl : prog

Pour chaque article un traitement ce type a été effectué avec des variantes en fonction des langues:
$i=0;
$check = 0;
$concat="";
$contenu = 0;
$go="";
my %article5=();
while ($ligne = ){
chomp $ligne;
$ligne =~ s/< a.*?\/a>//g;
if ($contenu == 1){
if (($ligne !~ m//)){
$go .= $ligne;
} if (($ligne =~ m//)){
$article5{$i} = $go;
$article5{$i} =~ s/<[^>]*>//g; $go="";
$i++;
$contenu = 0;
}
}

if ($check == 1){
if ($ligne =~ m/<\/h\d/){
$concat .= $ligne;
$article5{$i} = $concat;
$article5{$i} =~ s/<[^>]*>//g;
$i++;
$check=0;
$contenu = 1 unless ($ligne =~ m/<\/h3/); }
else{
$concat .= $ligne;
}
}
if($ligne =~ m/<h\d.*<\/h\d>/){
$article5{$i} = $ligne;
$article5{$i} =~ s/<[^>]*>//g;
$i++;
$contenu = 1 unless ($ligne =~ m/<h3/);
}
if(($ligne =~ m/ $concat = $ligne;
$check=1;
}
}
Puis les articles ont été alignés dans un tableau:
sort {$a <=> $b} keys %article2;
sort {$a <=> $b} keys %article3;
sort {$a <=> $b} keys %article4;
sort {$a <=> $b} keys %article5;
sort {$a <=> $b} keys %article6;
for my $key(sort {$a <=> $b} keys %article){
my $valeur = $article{$key};
my $valeur2 = $article2{$key};
my $valeur3 = $article3{$key};
my $valeur4 = $article4{$key};
my $valeur5 = $article5{$key};
my $valeur6 = $article6{$key};

remonter